package com.schoolcloud.share.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;

/**
 * 视频合集主表
 * @TableName video_sets
 */
@TableName(value ="video_sets")
@Data
public class VideoSets implements Serializable {
    /**
     * 合集ID
     */
    @TableId(value = "set_id", type = IdType.AUTO)
    private Integer setId;

    /**
     * 合集标题
     */
    @TableField(value = "title")
    private String title;

    /**
     * 合集描述
     */
    @TableField(value = "description")
    private String description;

    /**
     * 封面图URL
     */
    @TableField(value = "cover")
    private String cover;

    /**
     * 创建者ID
     */
    @TableField(value = "creator_id")
    private Integer creatorId;

    /**
     * 主分类ID
     */
    @TableField(value = "category_id")
    private Integer categoryId;

    /**
     * 浏览数
     */
    @TableField(value = "view_count")
    private Integer viewCount;

    /**
     * 点赞数
     */
    @TableField(value = "like_count")
    private Integer likeCount;

    /**
     * 收藏数
     */
    @TableField(value = "favorite_count")
    private Integer favoriteCount;

    /**
     * 可见性
     */
    @TableField(value = "privacy")
    private Integer privacy;

    /**
     * 是否推荐
     */
    @TableField(value = "is_featured")
    private Integer isFeatured;

    /**
     * 是否官方精选
     */
    @TableField(value = "is_curated")
    private Integer isCurated;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private LocalDateTime updateTime;

    @Serial
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
